<?php
namespace app\admin\model;

use think\Exception;
use think\facade\Db;
use think\Model;

class Users extends Model
{

     public static function  DbaddUsersInfo($data){
         //[Db新增]
         //insert() /save()  成功返回影响行数 /失败报出异常
         // try{}catch(Exception $e){ $e->getMessage()}获取异常类报错信息
         //严格模式  strict() 默认开启true  关闭为false
         //insertGetId() 获取主键id
         //insertAll() 多条语句一起添加


         try{
             $res=Db::name('users')->save($data);
            // $res=Db::name('users')->strict(true)->insert($data);
            // $res=Db::name('users')->strict(true)->insertGetId($data);
            // $res=Db::name('users')->strict(true)->insertAll($data);
             var_dump($res);
         }catch (Exception $e){
                //失败跳转
             echo "<pre>";
             print_r($e->getMessage());
             echo "</pre>";

         }
     }

      public static function   addUsersInfo($data){
         //模型新增
          //自动关闭严格模式
          //返回值永远是true
          //获取id  $obj->id
          // $obj->allowField(['字段1','字段2'])只允许新增字段
            //$obj->saveAll()  新增多条数据
          //新增的数据$data   建议自己组装
          //$obj=new Users();
//          $obj->uname='肖战最帅';
//          $obj->upwd=md5('123456');
//          $res=$obj->save();
//          var_dump($res);
//          echo "<pre>";
//          print_r($obj->id);
//          echo "</pre>";
            //$obj->allowField(['uname','upwd'])->save($data);

//            $res= $obj->saveAll($data);
//            echo "<pre>";
//            print_r($res->toArray());
//            echo "</pre>";
            //[静态新增]
                   try{
              $res=Users::strict(true)->create($data);
              $msg='成功';
          }catch (Exception $e){
              $res=false;
              $msg = $e->getMessage();
          }
          return [$res,$msg];

          }

      //更新
     public static function   userEdit(){
         //模型更新
         //先根据id或where条件查询 后更新
         //Db::raw('字段'+数字)  //使用函数增减
         //save 返回布尔值
//         $data=[
//             'id'=>18,
//             'uname'=>'肖战',
//             'upwd'=>123,
//             'tel'=>123123
//         ];
//         $obj=Users::where('id','=',$data['id'])->find();
//         $obj->uname=$data['uname'];
//         $obj->upwd=Db::raw('upwd+1');
//         $res=$obj->force()->save();
//        echo "<pre>";
//        print_r( $obj->toArray());
//        echo "</pre>";


         //字段过滤
//         $obj=Users::where('id','=',$data['id'])->find();
//         $obj->allowField(['uname','upwd'])->save($data);


         //批量更新
         $data=[
             'id'=>18,
             'uname'=>'魏无羡11',
             'upwd'=>123,
             'tel'=>123123

//             ['id'=>17,
//                 'uname'=>'顾魏',
//                 'upwd'=>123,
//                 'tel'=>123123
//             ],

         ];

         //$obj=Users::where('id','=',$data['id'])->find();
//         $obj=new Users();
//         $obj->saveAll($data);
//         echo "<pre>";
//         print_r( $obj->toArray());
//         echo "</pre>";


         //静态
         //update  三个参数  第一个参数更新的数据可以包含主键id
         //第二个参数主键id
         //第三个参数限制更新的字段
         $res=Users::update($data);
         Users::update(['uname' => 'thinkphp', 'upwd' => '123123'], ['id' => 18], ['uname']);
         var_dump($res);
         }


          public function setUpwdAttr($v,$d){

                return md5($v);
           }


}